【个人洞察】从WWDC 2020到WWDC 2022,苹果是如何看待和布局“智能系统”的?
为了和Windows、Android产生足够大的差异化,苹果正在从多方面构建一个以用户为中心的操作系统,这些方面包括了智能化、保护隐私、个性化、健康监控和跨设备交互,本篇文章笔者将讲述苹果是如何构建自己的智能系统的。笔者在2020年写过一篇《Design for intelligence in WWDC 2020 讲了什么?》,里面提到过苹果在iOS 14中展示了最新的人工智能技术,而且将整个人工智能技术与操作系统和应用程序的深度融合。在2020年到2022年苹果是如何基于人工智能演进自己的操作系统的?笔者结合WWDC 2020年到WWDC 2022年的课程做个讲解。
首先,苹果认为智能是当前构建出色的现代应用程序的核心部分,它是一种智能粘合剂,能将用户所有的设备、应用程序和操作系统联系在一起。在WWDC 2020的《Design for intelligence: Discover new opportunities》课程中苹果提到了自己对于智能的目标是:
让用户感觉到苹果的产品是了解和理解自己的。
帮用户快速完成已有的目标,以便实现更多的目标。
在合适的时间点推送有意义的内容、人物、地点和应用程序来丰富用户的生活,从而帮助用户发现更多。
为用户节省点击次数,让用户远离乏味的工作和快速得到想要的东西。
为了实现以上目标,苹果从WWDC 2014到现在开发了一系列功能帮助用户轻松完成日常任务,它们分别是Siri、Siri Suggestion、Shortcuts、Widget、Clips和应用扩展(App Extension),并且希望应用可以通过以上方式和系统集成并参与智能的构建。参与系统智能集成的好处是什么?它能为应用程序带来更多的使用入口,有效提升应用的流量、实用性和可见性。苹果的设计师在WWDC 2020的《Design for intelligence》系列课程中提到iOS 14的人工智能是如何帮助用户解决问题的:
当用户预定了一个餐厅,日历会自动将这个约会事件记录下来,Siri Suggestion会根据时间和交通情况将信息推送到用户的多个设备上。
当用户赶飞机时,Siri Suggestion会在地图首页展示机场和航班的相关信息,用户只需一步操作即可非常方便地获得前往机场的路线。当用户需要值机时,Siri建议会将值机信息显示在用户的锁屏页上,方便用户一步直达。
当Siri发现你在看电影的时候会推荐用户开启“勿扰模式”。
当用户收到朋友发来的健身房地址短信时,Siri Suggestion会在地图上显示相关的地址信息,用户只要点击一下即可到达该健身房的行车路线。
在健身房,即使用户没有下载相应的App,用户也可以将手机靠近接待台的NFC标签就能获取今天的课程表。
当下载健身房的App后,用户会发现这个App和Siri Suggestion可以帮自己养成健康的习惯。例如,当用户在主页通过下拉搜索应用时,Siri能根据用户使用手机的习惯来学习和预测用户即将要启动的APP,所以即使用户还没开始打字,健身房App也会直接显示在用户的Siri Suggestion上。如果用户喜欢上了瑜伽运动,Siri Suggestion还能显示瑜伽运动的时间表。
如果用户在主页上添加了健身房App的Widget,智能堆栈会在适当的时间提醒用户即将要上瑜伽课,这样用户就不会错过任何一堂瑜伽课了。
为什么苹果要做系统智能集成以及信息分发?因为人工智能依赖数据,但所有的数据都在每一个应用里,而每一个应用都是一个个数据孤岛,不同应用厂商的信息和数据相互不互通,这样会为系统和用户分别带来两个严重的问题:
当越来越多的应用成为超级应用(例如微信、Facebook),用户需要使用的是这个应用而不是这个系统,那么系统会沦为可替代品,要知道隔壁拥有数十亿用户的Android阵营手机便宜很多。
应用厂商的数据不打通导致用户需要记忆自己在不同应用中做了什么,系统和应用都无法做到真正的以用户为中心的设计,而且用户无法体验到“系统对于场景的理解并为用户带来便利”的好处。
再加上苹果在WWDC 2018和WWDC 2019强调的Shortcuts无人问津后,苹果发现了一个本质问题:如果自己的系统要成为更强大的智能系统,并且解决以上两个严重问题,Shortcuts不应该只是一个应用,它应该是系统的核心,它能自动连接不同应用数据和系统能力为用户在合适的时机带来更便捷的Workflow,为此苹果在WWDC 2020到WWDC 2022三年内一直强调三个词:意图(Intent)、快捷方式(Shortcuts)和小部件(Widget),笔者将一一讲述苹果在这三年里做了什么。
Intent
在WWDC 2020年的《Design for intelligence: Make friends with "The System"》课程中,苹果提出了应用和系统协同工作需要一个通用语言:意图框架(Intents Framework)。在介绍意图框架以前,笔者需要科普一个知识:Shortcuts是苹果收购回来的。Shortcuts的前身叫Workflow,是2014年12月发布的一款 iOS 应用。和一般的应用不大一样,它Workflow本身没有什么功能,但用户可以用它提供的动作模块来像搭积木一样组成各种工具,例如把Instagram里的图片或视频下载自己的相册里并直接分享给好友;可以把视频转成 GIF,也可以反过来把 GIF 转成视频......
对于多数人来说,Workflow最优秀的地方在于它突破了 iOS 的沙盒限制,用户可以从一个应用获取信息并发送到另一个应用中,只要通过不同的逻辑设置就能产出一系列的工作流,再加上Workflow对iOS可访问性功能的出色使用,上线不到一年就获得了2015年的Apple设计奖,在2017年被苹果收购。苹果收购Workflow的理由很简单:Workflow做了系统该做的事情。
Workflow被收购后改名为“Shortcuts”,并且成为了iOS的系统应用,拥有了更多系统权限和能力,更重要的是Shortcuts和Siri进行了联动,Siri可以直接调用Shortcuts内置的指令。苹果在WWDC 2018和WWDC 2019强调Shortcuts的重要性但无论开发者还是大众用户都无人问津,为什么?因为用户使用Shortcuts需要懂得编程,理解数据该怎么使用,同时需要严谨的逻辑思维,这无疑对大众用户来说是有较高的门槛。苹果打算如何解决该问题?
本质上来说,Shortcuts是将同一个应用或者不同应用的参数进行一系列的逻辑判断和操作,将多个流程压缩成一个流程以满足用户需求。这是不是跟语音交互的理念很像?没错,但语音交互背后是基于自然语言理解和意图理解来实现的。意图也是由一个个参数组成的,这些参数被称为词槽,只要语音对话中每一个槽位上都有对应的词槽,那么系统就能给出对应的结果。那么苹果提出的“意图框架”和语音交互SiriKit的意图有什么区别?苹果解释了意图框架存在着三个关键概念,它们分别是“定义”、“学习”和“执行”。
首先我们了解一下“定义”是什么意思。读者应该问一下自己,用户希望通过你的应用做什么?他们的目标是什么?目标是用户想通过使用你产品获取内容或者达成某些目的,其中的关键操作可以由Intent(意图)来定义。那么打开界面、跳转界面算是关键操作么?不算,这只是获取内容和达成目的的路径,它们无需成为Intent的一部分。我们应该关注用户打开应用执行的任务和目的是什么,实施它们时需要的相关属性是什么。
以咖啡下单为例,每一位用户喜欢的咖啡品种和需要的容量都不同,这些细节正是每一位用户下单咖啡时的动作,也是咖啡的属性,这些可以被定义为Intent的参数。意图框架允许开发者灵活地定义Intent及其参数,在咖啡下单的Intent中我们需要定义咖啡的类型以及杯子尺寸两个参数,并且通过这些参数来表示用户实际下单的商品,例如用户下单的是一杯大杯的冰拿铁。Intent能让应用程序和系统用相同的语言进行交流。
接着,我们聊一下“学习”是什么意思。智能系统的关键是学习用户正在做什么,以便预测他们在未来的当前时刻会做什么。这一点怎么做到呢?意图框架中有一个名叫Donation(捐赠)的概念。当用户使用你的应用时,Donation会向系统提供一些可以用来学习的信号,而这些积极的信号有助于系统在未来做出更好的预测,并在合适的时机将内容展示给用户。读者可能会问,应用可以将用户没有的习惯捐赠给系统么?苹果表示不应该向系统贡献用户从来没做过的事情,例如用户下载了咖啡应用后但从未下过单。
苹果在《Design for intelligence: Make friends with "The System"》课程中提及到用户每一个执行动作都应该进行捐赠给系统,而不只是第一次,这可以帮助系统更准确地预测提供服务的最好时间和地点。仍以买一杯咖啡为例,Donation可以帮助我们解决几时、以及哪里下单的问题,但是时间和位置只是我们理解上下文信号中的一小部分。Donation是一种记录,是实际执行Intent时的快照,系统做出预测时,我们会从用户应用的Donation中收集信息并重建相应的Intent。举个例子,用户第一天早上订了一杯大杯拿铁咖啡,中午点了一杯清爽的柠檬水;第二天早上用户又点了一杯大杯拿铁开始了新的一天的工作......随着用户长时间使用该应用,这些信号会随着时间累积,尽管中途用户的某些行为会发生变化,但系统仍然会学到用户的一些固定模式,例如用户早上会订一杯大杯拿铁咖啡。当系统学习到这些模式后,系统就会做出预测,同时会尝试将正确的任务与用户的情况相匹配。
读到这里,相信读者大概了解“定义”和“学习”中的Intent和Donation分别是什么。Intent是每一项任务抽象后的语句,最重要的参数是When/Where/Who/How/What,而Donation即是用户每天每一项任务的执行情况,它会根据When/Where/Who/How/What多个维度来预测用户在某个时间段/每个地点做什么,当用户的固定模式被Donation发现,那么Intent的准确率会越高,所以Intent和Donation是相辅相成的。通过Intent和Donation,意图框架可以将苹果成熟的人工智能能力以及系统能力赋予给每一个应用程序,同时基于应用收集来的用户信息和用户习惯反哺自己,让自己变得更懂用户。因此,意图框架将成为操作系统和应用程序之间的桥梁,也是苹果正在构建的重要能力之一。
意图框架中的“执行”更多是指系统会将预测到的Intent(操作)显示应用程序带来不同的入口,它们包括Siri、Siri Suggestion、Widget和Shortcuts App,当用户点击任何一个Intent,它们都会触发相应的操作。尽管应用尚未运行也要做好相应的准备,因为Intent被系统传递给应用后应当立刻被执行。还是以刚才的咖啡下单为例,假设系统在Siri Suggestion显示了一条咖啡下单的推送信息,目的是让用户在下订单之前确认他们的订单是否正确,当用户点击后,产品应当跳到订单确认的界面。
从定义和案例上来看,WWDC 2020年推出的意图框架和SiriKit没有直接的关系,意图框架是基于时间、地点和用户的Donation将应用的操作前置到系统的不同入口;SiriKit依然服务于语音交互,不过功能有限,只能用于消息传递、健身和支付等苹果定义好的场景。但两者都跟Shortcuts有直接关联,因为意图框架和SiriKit都能直接调用Shortcuts。
在WWDC 2022上苹果推出了App Intents的新概念,相关课程包括了《Dive into App Intents》、《Writing for interfaces》和《Implement App Shortcuts with App Intents》,我们可以这么理解,App Intents将SiriKit、Shortcut和意图框架进行了融合,它是未来苹果系统和应用中最重要的设计。
App Intents包含了3个关键组件:Intents、Entities和App Shortcuts,如下图。Intents是应用程序向系统公开的自定义操作,并合并了对现有 SiriKit 意图的支持,这说明Siri能做的事情变得更多了。Entities可以理解为系统的核心概念和数据,使得系统可以发现它们。App Shortcuts可以将Intents和Entities集成到Shortcuts应用中。相比2020年的意图框架,苹果在2022年进一步将SiriKit、Shortcut和应用进行整合,并希望用“意图”来打通应用程序、Shortcuts和Siri。
在WWDC 2022为数不多的设计课程《Writing for interfaces》中苹果设计师建议设计师无论是选择单词、短语、提示甚至描述可访问性的图像,都应该从语言的角度进行设计并帮助人们从应用中获得最大收益。在课程中,苹果设计师提出了在构建应用时应该考虑4个方面,它们分别是Purpose(目的)、Anticipation(预期)、Context(场景/语境)和Empathy(同情),里面的内容跟意图有关的如下:
意图的构建是完成用户的目标,无论是整个流程还是所有屏幕,都要有明确的目的,尽量每个屏幕都应该一个目的,但不要为了一个目的使用多个屏幕,因为从Siri和Shortcuts跳转到应用时不知道跳转到哪里。、
从对话的角度构建界面和Siri对话,这样能更好地将意图融入到界面设计中。
多从应用外思考你的应用需要做什么,也就是从场景的角度思考能在Widget、Siri Suggestion等系统入口显示什么。
在WWDC 2022的《Dive into App Intents》中苹果提到了意图支持的参数类型如下,基本覆盖了用户和系统所关注的数据类型,我们可以推断出苹果尝试在应用数据层面开始和系统意图框架进行整合。
十进制(Decimal)
布尔值(Boolean)
整数(Integer)
枚举(Enumeration)
String
富文本(Rich Text)
人(Person)
地点(Location)
网址(URL)
文件(File)
付款方式(Payment Method)
测量(Measurement)
日期(Date)
期间(Duration)
应用实体(App Entity)
货币(Currency)
同时,课程中提到App Intents可以在以下地方可以使用:
菜单栏(Menu Bar) 共享扩展(Share Extensions)
终端(Terminal)
苹果脚本(AppleScript)
主屏幕(Home Screen)
建议(Suggestions)
锁屏(Lock Screen)
快捷方式小部件(Shortcuts Widget)
快速操作(Quick Actions)
语音(Siri)
苹果手表(Apple Watch)
HomePod
自动化(Automations)
快捷方式应用(Shortcuts App)
键盘(Keyboard)
Spotlight
除了以上内容,其实苹果还有一部分系统功能暂时未提及,但在前文已经提及了它们也属于智能交互的一部分,那就是应用扩展,它可以让你扩展你App的自定义功能和内容,使用户可以在与其他应用或者系统进行互动的时候去使用它。应用扩展包括了共享、通知中心、邮件等等,它们能部分或者全部应用于iOS/iPadOS、 macOS、tvOS和watchOS,更多应用扩展类型可以从下图查看。
从当前的WWDC内容来看,意图更多是和Shortcuts、Siri Suggestion、Widget和Siri产生关系,它们的关系如下:Shortcuts是将意图,也就是多个参数打包好的操作,它可以在Shortcuts App里被用户调用,也可以成为一句话被Siri Suggestion调用,也可以被图形化和结构化成为一个Widget,如下图。如果用户在和Siri对话过程中命中了某个意图,但缺失了若干参数则会通过多轮对话的方式将其补全并执行,所以Siri可以理解是Shortcuts的对话版。
如何将意图融入到更多的入口将是苹果未来的重要工作,简单理解的话,在未来构建应用程序的核心是站在意图的角度构建界面、操作和数据,并且能将数据和操作前置到系统入口和各种应用扩展,系统则在合适的时机将这些操作和数据第一时间展现给用户,用户再也不用重复、一步一步地使用应用。
Shortcuts
当前Shortcuts已经能在iOS、iPadOS、macOS和watchOS上,但是在2022年前,Shortcuts对于大部分用户来说并不友好,首先大部分应用都没有将自己的操作和数据开放出来,尤其国内应用,例如微信截至2022年为止才开放了“发送消息”的指令,但这个也跟苹果的政策有关系。其次是Shortcuts的指令编写难度高,以下载Twitter应用中的视频为例。众所周知Twitter并不允许用户下载应用内的视频,但国外网友制作了一个Shortcuts,只要用户点击视频的分享按钮就能将视频直接下载到相册。这个Shortcuts背后涉及了约40条操作,下图是一部分逻辑,里面已经包括各种逻辑判断和URL获取,可想而知这对一个想创建Shortcuts的普通用户来说是困难的。
第三是绝大部分应用厂商在设计应用界面时没有考虑过语音交互或者Shortcuts事项,都是基于信息架构和界面布局去设计一个个应用,即使苹果提供了Siri和Shortcuts功能,应用厂商也没兴趣去给自己的应用打补丁,因为用户使用这些功能的频率较低,Shortcuts一直没得到应用厂商和用户的重视。苹果深知这一点,如果要将Shortcuts的真正价值发挥出来,只能让应用从底层去修改自己的交互框架,将Shortcuts融入到应用的交互框架中。那么怎么吸引应用厂商自己去设置这些Shortcuts?那就是系统提供不同的系统入口让你的应用获取更多的流量,它们包括了上文提及的App Intents可以使用的各种地方。
笔者认为,苹果对于Shortcuts的理解是足够深入的。在上文笔者提及了Shortcuts和Siri、Siri Suggestion、Widget的关系,它们都可以理解为应用Shortcuts,也就是应用厂商提前定义好的一项或多项任务。这是不是苹果的最终目标?当然不是,笔者认为苹果做这一切的目的都是为了自定义Shortcuts服务,也就是收购WorkFlow的目的:应用之间可以自动产生联动。要做到这一点,首先需要应用厂商有意识地、规范地构建不同颗粒度的Shortcuts,系统会从多个入口验证这些Shortcuts对于用户的价值,这也是意图框架的意义所在。其次,当Shortcuts被规范化后组装成更多Shortcuts的难度会下降,用户可以根据自身需求将不同应用的Shortcuts像堆积木一样构建属于自己的Shortcuts,这非常符合苹果正在推进的事情:个性化。Google和苹果分别在2021和2022年开始强调系统的个性化,系统有更多的选项让用户去定制自己的系统,目的都是为了让用户努力定制好自己的界面后使用起来更顺手,同时转移到对方阵地的成本会上升,只不过Android更多从界面的设计上入手,而苹果更希望除了界面设计还有智能系统所带来的千人千面体验。
笔者认为在未来苹果可能会做这样的事情:Shortcuts推荐,也就是将用户画像相似的Shortcuts推荐给当前用户。怎么理解?当某些Shortcuts爱好者制作了一系列跨应用Shortcuts后会共享到Shortcuts App,而这些Shortcuts被越来越多的用户使用后,苹果会发现Shortcuts被使用的共通点,例如用户画像、应用类型、使用时间和地点,它会将相似的场合将这些Shortcuts分享给需要的用户。
Widget
Widget是苹果在WWDC 2020推出的桌面控件,它能同时支持在 iOS、iPadOS、macOS 多个平台。Widget拥有三种不同的尺寸可供选择(小、中、大),最小的Widget尺寸只有iOS屏幕上四个图标的空间大小。
苹果统计过用户每天前往主屏幕的次数大概为90次,而且停留时间有限,因此苹果认为Widget存在的目的是为了关注应用程序尚未打开时的体验,它可以为用户提供及时的信息,以及为用户提供手机主页查看应用里的深层信息。苹果认为日历是一个很好的交互入口,因为用户所有的任务都是基于时间轴进行。日历的Widget除了能显示星期几和当前日期,还应该能显示用户在当前的相关活动,而每一个活动的开始时间和活动地点等一目了然的详细信息为用户节省了打开应用程序以查找此信息的潜在步骤。当用户的一天即将结束并且没有更多事件而不是尽可能仅显示一个空白Widget时,苹果会开始告诉用户接下来或者明天将要发生的事情。除此之外,如果日历检测到当天是某位联系人的生日时,日历会显示生日礼物图标来提示用户。用户有可能会在日历上添加新事件、查找现有事件并对事件进行更改,而日历程序可以智能地为每一个活动定义一个操作。一旦日历应用程序创建了这些操作,用户就可以将它们作为模块,和其他不同操作混合一起构建不同的Shortcuts。
苹果还允许用户将几个不同的Widget添加到同一个位置合并为一个智能堆栈。在基于用户的行为和使用场景的基础上,智能堆栈可以在某个特定的时间自动轮换展示与用户最相关的那个小组件,这样用户在桌面直接看到当前最需要的信息。例如当用户醒来时可能想要知道今天的天气状况,或者在上班路上时总是播放最近喜欢的音乐,那么智能堆栈都会场景推荐相应的Widget给到用户。
当笔者在观看WWDC 2020的时候第一直觉是Widget将是未来苹果的重点功能,理由如下:
Widget将比通知更重要,同样是应用外显示相关信息,有多少用户愿意天天看通知的推送?而且很多应用的通知都是疯狂推送,容易打扰到用户,所以用户会将大量应用的通知推送关掉;但Widget不会,因为应用厂商放进Widget的信息都是深思熟虑过的,不然用户不会轻易使用该应用的Widget,所以Widget在一定程度上可以替代通知,或者和通知做进一步融合。
Widget拥有多个尺寸是一个很有想象力的事情,因为它的尺寸能兼容手表、手机、平板和桌面电脑。
以上预测在WWDC 2021和2022上都得到了验证。WWDC 2021推出的macOS Monterey的通知中心上允许用户添加Widget;在WWDC 2022推出的iOS 16中,Widget和通知都能显示在锁屏页上;在WatchOS 9上Widget也能显示,如下图,这些都意味着通知和Widget已经在开始融合并无缝地显示苹果多个设备上。